From d4bd9e9c46bc1230ea697efe887b1d77f66ba535 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 4 Aug 2014 14:25:10 +0200 Subject: [PATCH] GtkSwitch: End animations on finalize Handle the unlikely case that a switch gets finalized while its toggle animation is running. --- gtk/gtkswitch.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gtk/gtkswitch.c b/gtk/gtkswitch.c index 534dc5834a..e9837372b4 100644 --- a/gtk/gtkswitch.c +++ b/gtk/gtkswitch.c @@ -852,6 +852,14 @@ gtk_switch_dispose (GObject *object) G_OBJECT_CLASS (gtk_switch_parent_class)->dispose (object); } +static void +gtk_switch_finalize (GObject *object) +{ + gtk_switch_end_toggle_animation (GTK_SWITCH (object)); + + G_OBJECT_CLASS (gtk_switch_parent_class)->finalize (object); +} + static gboolean state_set (GtkSwitch *sw, gboolean state) { @@ -919,6 +927,7 @@ gtk_switch_class_init (GtkSwitchClass *klass) gobject_class->set_property = gtk_switch_set_property; gobject_class->get_property = gtk_switch_get_property; gobject_class->dispose = gtk_switch_dispose; + gobject_class->finalize = gtk_switch_finalize; g_object_class_install_properties (gobject_class, LAST_PROP, switch_props); -- 2.30.2